#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;

const int max_aph_len = 30;
const int aph_len = 26;

int enc_aph[max_aph_len];
int ori_aph[max_aph_len];
string enc_str;
string ori_str;

int main() {
  while (cin >> enc_str >> ori_str) {
    memset(enc_aph, 0, sizeof(enc_aph));
    memset(ori_aph, 0, sizeof(ori_aph));

    int i;
    int strlen = enc_str.length();
    for (i = 0; i < strlen; i++) {
      enc_aph[enc_str[i] - 'A']++;
      ori_aph[ori_str[i] - 'A']++;
    }

    sort(enc_aph, enc_aph + aph_len);
    sort(ori_aph, ori_aph + aph_len);
    
    for (i = 0; i < aph_len; i++) {
      if (enc_aph[i] != ori_aph[i]) {
        cout << "NO" << endl;
        break;
      }
    }

    if (i == aph_len) {
      cout << "YES" << endl;
    }
  }

  return 0;
}
